<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    
</body>
<script>

    function fn(){
        this.name = "haha";
        this.show = function(){
            console.log("qf!");
        }
        this.show()
        console.log(this);
    }
    // fn();       // window

    const f = new fn();
    console.log(f);

    f.show();

    // new的原理
    //     1. 创建新对象
    //     2. 改变this指向到这个新函数
    //     3. xxx
    //     4. 执行原函数内的功能
    //     5. 检测原函数是否主动返回对象，如果没有，返回这个新对象



    
</script>
</html>